package com.cc.service;

import com.cc.mapper.EbProductMapper;
import com.cc.model.EbProduct;
import com.cc.model.EbProductExample;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @Description: 用一句话描述
 * @Auther: 新梦想*陈超
 * @Date: 2020-10-30 09:05
 * 浏览器---web层---service层--持久层(mapper)--数据库
 */
@Service
public class ProductService {

    @Autowired
    private EbProductMapper ebProductMapper;

    /**
     * 分页查询商品信息
     * @param page
     * @param pageSize
     * @return
     */
    public List<EbProduct> list(int page,int pageSize){
        PageHelper.startPage(page,pageSize);
        return ebProductMapper.selectByExample(null);
    }

    /**
     * 根据id查询某个商品的详细信息
     * @param epId
     * @return
     */
    public EbProduct findById(int epId) {
        return ebProductMapper.selectByPrimaryKey(epId);
    }

    public List<EbProduct> findByCategoryId(int ep_child_id) {
        //1.构建高级查询的exmpale对象
        EbProductExample example = new EbProductExample();
        //2.根据example对象构建查询条件对象
        EbProductExample.Criteria criteria = example.createCriteria();
        //3.将条件设置到criteria对象上
        criteria.andEpcChildIdEqualTo(ep_child_id);
        //4.因为查询的百货类商品不止1个 所有使用集合接收从数据库查询出来的商品数据
        return ebProductMapper.selectByExample(example);
    }

    public List<EbProduct> selectByCondition(String searchText) {
        //1.构建高级查询的exmpale对象
        EbProductExample example = new EbProductExample();
        //2.根据example对象构建查询条件对象
        EbProductExample.Criteria criteria = example.createCriteria();
        //3.将条件设置到criteria对象上
        criteria.andEpDescriptionLike("%"+searchText+"%");
        //4.因为查询的百货类商品不止1个 所有使用集合接收从数据库查询出来的商品数据
        return ebProductMapper.selectByExample(example);

    }
}
